; Prologue - LA Downtown

; - check BIN.DPK for code (#2 find)

; port1
; 3f939 = ID
; 3f93a = button1
; 3f93b = button2
; 3f93c = mouse-x
; 3f93d = mouse-y


; port2
; 3f949 = ID
; 3f94a = button1
; 3f94b = button2
; 3f94c = mouse-x
; 3f94d = mouse-y


If both connected, mouse buttons respond to port2
- mouse motion responds to both




Problem: Need to remap guncon -before- we reach here (data caching problems)



; note: copies over BIOS code (!!)

000048e8 : 96390004  LHU     ffffffff (t9), 0004 (1f801040 (s1)) [1f801044]
000048ec : 00000000  NOP    
000048f0 : 33280002  ANDI    00001013 (t0), 00000007 (t9), 0002 (2),
000048f4 : 15000006  BNE     00000002 (t0), 00000000 (r0), 00004910,
000048f8 : 00000000  NOP    
00004910 : 92220000  LBU     00000000 (v0), 0000 (1f801040 (s1)) [1f801040]
00004914 : 24A5FFFF  ADDIU   00000002 (a1), 00000002 (a1), ffff (65535),
00004918 : 00052E00  SLL     00000001 (a1), 00000001 (a1), 18 (24),
0000491c : 00021600  SLL     000000fc (v0), 000000fc (v0), 18 (24),
00004920 : 00021603  SRA     fc000000 (v0), fc000000 (v0), 18 (24),
00004924 : 00052E03  SRA     01000000 (a1), 01000000 (a1), 18 (24),

===> buttons port1
00004928 : A2620000  SB      fffffffc (v0), 0000 (8003f93b (s3)) [8003f93b]
0000492c : 1CA0FF8B  BGTZ    00000001 (a1), 0000475c,
00004930 : 26730001  ADDIU   8003f93b (s3), 8003f93b (s3), 0001 (1),
000048bc : 0015102B  SLTU    00000001 (v0), 00000000 (r0), 00000000 (s5),
00004934 : 8FAB0040  LW      0000001e (t3), 0040 (00008558 (sp)) [00008598]
00004938 : 00001021  ADDU    ffffffe3 (v0), 00000000 (r0), 00000000 (r0),
0000493c : 8D6C0000  LW      0000001f (t4), 0000 (000074c8 (t3)) [000074c8]
00004940 : 00000000  NOP    
00004944 : A1800000  SB      00000000 (r0), 0000 (8003f938 (t4)) [8003f938]
00004948 : 10000013  BEQ     00000000 (r0), 00000000 (r0), 00004998,
0000494c : A620000A  SH      00000000 (r0), 000a (1f801040 (s1)) [1f80104a]
00004998 : 8FBF0034  LW      000048d0 (ra), 0034 (00008558 (sp)) [0000858c]
0000499c : 8FB0001C  LW      1f801070 (s0), 001c (00008558 (sp)) [00008574]
000049a0 : 8FB10020  LW      1f801040 (s1), 0020 (00008558 (sp)) [00008578]
000049a4 : 8FB20024  LW      00000005 (s2), 0024 (00008558 (sp)) [0000857c]
000049a8 : 8FB30028  LW      8003f93e (s3), 0028 (00008558 (sp)) [00008580]
000049ac : 8FB4002C  LW      ffffff7f (s4), 002c (00008558 (sp)) [00008584]
000049b0 : 8FB50030  LW      00000000 (s5), 0030 (00008558 (sp)) [00008588]
000049b4 : 03E00008  JR      000049d8 (ra),
000049b8 : 27BD0068  ADDIU   00008558 (sp), 00008558 (sp), 0068 (104),




(vector table)
000049bc : 3C0E0000  LUI     0000020d (t6), 0000 (0),
000049c0 : 8DCE74B8  LW      00000000 (t6), 74b8 (00000000 (t6)) [000074b8]
000049c4 : 27BDFFE8  ADDIU   000085d8 (sp), 000085d8 (sp), ffe8 (65512),
000049c8 : 11C0000C  BEQ     00000001 (t6), 00000000 (r0), 000049fc,
000049cc : AFBF0014  SW      00000e28 (ra), 0014 (000085c0 (sp)) [000085d4]

; port1 read
000049d0 : 0C001126  JAL     00004498, 00000e28 (ra),
000049d4 : 00002021  ADDU    00000001 (a0), 00000000 (r0), 00000000 (r0),

; port2 read
000049d8 : 0C001126  JAL     00004498, 000049d8 (ra),
000049dc : 24040001  ADDIU   0000000a (a0), 00000000 (r0), 0001 (1),

000049e0 : 3C0F0000  LUI     00003003 (t7), 0000 (0),
000049e4 : 8DEF74C4  LW      00000000 (t7), 74c4 (00000000 (t7)) [000074c4]
000049e8 : 00000000  NOP    
000049ec : 11E00003  BEQ     00000000 (t7), 00000000 (r0), 000049fc,
000049f0 : 00000000  NOP    
000049fc : 3C180001  LUI     00003013 (t8), 0001 (1),
00004a00 : 8F188914  LW      00010000 (t8), 8914 (00010000 (t8)) [00008914]
00004a04 : 00000000  NOP    
00004a08 : 13000005  BEQ     00000000 (t8), 00000000 (r0), 00004a20,
00004a0c : 00000000  NOP    
00004a20 : 3C090000  LUI     00000201 (t1), 0000 (0),
00004a24 : 8D2974BC  LW      00000000 (t1), 74bc (00000000 (t1)) [000074bc]
00004a28 : 00000000  NOP    
00004a2c : 11200004  BEQ     00000001 (t1), 00000000 (r0), 00004a40,
00004a30 : 8FBF0014  LW      000049e0 (ra), 0014 (000085c0 (sp)) [000085d4]
00004a34 : 0C001400  JAL     00005000, 00000e28 (ra),
00004a38 : 00000000  NOP    





00010348 : 314AF7FF  ANDI    0000fcff (t2), 0000fcff (t2), f7ff (63487),




(SLPS)

80023520 : 3C018004  LUI     8003f938 (at), 8004 (32772),
80023524 : 2421F939  ADDIU   80040000 (at), 80040000 (at), f939 (63801),
80023528 : 00250821  ADDU    8003f939 (at), 8003f939 (at), 00000000 (a1),

; check ID (shared code - both ports)
8002352c : 90220000  LBU     00000000 (v0), 0000 (8003f939 (at)) [8003f939]
80023530 : 00000000  NOP    
80023534 : 00021102  SRL     00000012 (v0), 00000012 (v0), 04 (4),
80023538 : 104D0010  BEQ     00000001 (v0), 00000001 (t5), 8002357c,
8002353c : 00000000  NOP    

====>

; MOUSE ONLY = shared code (gun + story)

8002357c : A0C90000  SB      00000000 (t1), 0000 (8003f958 (a2)) [8003f958]

; button2 (same target address) (store into cache)
; - note: only store port1 data
80023580 : 90E20000  LBU     00000001 (v0), 0000 (8003f93b (a3)) [8003f93b]
===>
80023584 : 8CC40004  LW      f2000003 (a0), 0004 (8003f958 (a2)) [8003f95c]
80023588 : A0C20003  SB      000000f4 (v0), 0003 (8003f958 (a2)) [8003f95b]
===>

8002358c : 3C018004  LUI     8003f939 (at), 8004 (32772),
80023590 : 2421F93C  ADDIU   80040000 (at), 80040000 (at), f93c (63804),
80023594 : 00250821  ADDU    8003f93c (at), 8003f93c (at), 00000000 (a1),

; mouse-x (store into cache)
80023598 : 90220000  LBU     000000f4 (v0), 0000 (8003f93c (at)) [8003f93c]
8002359c : 00000000  NOP    
800235a0 : A0C20001  SB      00000000 (v0), 0001 (8003f958 (a2)) [8003f959]

800235a4 : 00021600  SLL     00000000 (v0), 00000000 (v0), 18 (24),
800235a8 : 00021603  SRA     00000000 (v0), 00000000 (v0), 18 (24),
800235ac : 3C018004  LUI     8003f93c (at), 8004 (32772),
800235b0 : 2421F93D  ADDIU   80040000 (at), 80040000 (at), f93d (63805),
800235b4 : 00250821  ADDU    8003f93d (at), 8003f93d (at), 00000000 (a1),

; mouse-y (store into cache)
800235b8 : 90230000  LBU     800234dc (v1), 0000 (8003f93d (at)) [8003f93d]
800235bc : 00441021  ADDU    00000000 (v0), 00000000 (v0), 0000f9b0 (a0),

; final mouse-x...? (last byte important?)
800235c0 : ACC20004  SW      0000f9b0 (v0), 0004 (8003f958 (a2)) [8003f95c]

800235c4 : 8CC20008  LW      0000f9b0 (v0), 0008 (8003f958 (a2)) [8003f960]
800235c8 : 340B0001  ORI     00000000 (t3), 00000000 (r0), 0001 (1),
800235cc : A0C30002  SB      00000000 (v1), 0002 (8003f958 (a2)) [8003f95a]

; chop sign bits..?
800235d0 : 00031E00  SLL     00000000 (v1), 00000000 (v1), 18 (24),
800235d4 : 00031E03  SRA     00000000 (v1), 00000000 (v1), 18 (24),
800235d8 : 00621821  ADDU    00000000 (v1), 00000000 (v1), 00010500 (v0),

; final mouse-y...?
800235dc : ACC30008  SW      00010500 (v1), 0008 (8003f958 (a2)) [8003f960]


800235e0 : 3C018004  LUI     8003f93d (at), 8004 (32772),
800235e4 : 2421F964  ADDIU   80040000 (at), 80040000 (at), f964 (63844),
800235e8 : 00280821  ADDU    8003f964 (at), 8003f964 (at), 00000000 (t0),
800235ec : A42A0000  SH      00000000 (t2), 0000 (8003f964 (at)) [8003f964]
800235f0 : 15600003  BNE     00000001 (t3), 00000000 (r0), 80023600,
800235f4 : 25080004  ADDIU   00000000 (t0), 00000000 (t0), 0004 (4),
80023600 : 24E70010  ADDIU   8003f93b (a3), 8003f93b (a3), 0010 (16),
80023604 : 25290001  ADDIU   00000000 (t1), 00000000 (t1), 0001 (1),
80023608 : 29220002  SLTI    00010500 (v0), 00000001 (t1), 0002 (2),
8002360c : 1440FFBD  BNE     00000001 (v0), 00000000 (r0), 80023504,
80023610 : 24A50010  ADDIU   00000000 (a1), 00000000 (a1), 0010 (16),
80023614 : 03E00008  JR      800233d8 (ra),
80023618 : 00000000  NOP    



====>

80023748 : 8C42F95C  LW      80040000 (v0), f95c (80040000 (v0)) [8003f95c]
8002374c : 00000000  NOP    
80023750 : AC820004  SW      0000f8b1 (v0), 0004 (80062a40 (a0)) [80062a44]

80023754 : 3C028004  LUI     0000f8b1 (v0), 8004 (32772),
80023758 : 8C42F960  LW      80040000 (v0), f960 (80040000 (v0)) [8003f960]
8002375c : 00000000  NOP    
80023760 : AC820008  SW      0001057d (v0), 0008 (80062a40 (a0)) [80062a48]

80023764 : 90620000  LBU     0001057d (v0), 0000 (8003f958 (v1)) [8003f958]
80023768 : 90830004  LBU     8003f958 (v1), 0004 (80062a40 (a0)) [80062a44]
8002376c : A0820000  SB      00000000 (v0), 0000 (80062a40 (a0)) [80062a40]

; mouse-x draw? old -> new?
80023770 : 3C028004  LUI     00000000 (v0), 8004 (32772),
80023774 : 9042F95C  LBU     80040000 (v0), f95c (80040000 (v0)) [8003f95c]
80023778 : 00000000  NOP    
8002377c : 00431023  SUBU    000000b1 (v0), 000000b1 (v0), 000000b1 (v1),
80023780 : A0820002  SB      00000000 (v0), 0002 (80062a40 (a0)) [80062a42]

; mouse-y draw? old -> new?
80023784 : 3C028004  LUI     00000000 (v0), 8004 (32772),
80023788 : 9042F960  LBU     80040000 (v0), f960 (80040000 (v0)) [8003f960]
8002378c : 90830008  LBU     000000b1 (v1), 0008 (80062a40 (a0)) [80062a48]
80023790 : 00000000  NOP    
80023794 : 00431023  SUBU    0000007d (v0), 0000007d (v0), 0000007d (v1),
80023798 : A0820003  SB      00000000 (v0), 0003 (80062a40 (a0)) [80062a43]





800237b8 : 8C42F95C  LW      80040000 (v0), f95c (80040000 (v0)) [8003f95c]
800237bc : 00000000  NOP    
800237c0 : AC820004  SW      0000f8b1 (v0), 0004 (80062a40 (a0)) [80062a44]
800237c4 : 3C038004  LUI     0000007d (v1), 8004 (32772),
800237c8 : 8C63F960  LW      80040000 (v1), f960 (80040000 (v1)) [8003f960]

; signals mouse code to subroutine caller below (!!!)
800237cc : 34020001  ORI     0000f8b1 (v0), 00000000 (r0), 0001 (1),

800237d0 : AC830008  SW      0001057d (v1), 0008 (80062a40 (a0)) [80062a48]







80048434 : 3C028006  LUI     00000000 (v0), 8006 (32774),
80048438 : 94422A4E  LHU     80060000 (v0), 2a4e (80060000 (v0)) [80062a4e]
8004843c : 00000000  NOP    
80048440 : 1440004A  BNE     00000000 (v0), 00000000 (r0), 8004856c,
80048444 : 00008021  ADDU    800682a8 (s0), 00000000 (r0), 00000000 (r0),

; get input data - check mouse
80048448 : 0C011DF0  JAL     800477c0, 80048434 (ra),
8004844c : 00000000  NOP    
80048450 : 10400046  BEQ     00000001 (v0), 00000000 (r0), 8004856c,
80048454 : 00000000  NOP  

; gun shooting only - mouse code
80048458 : 3C068006  LUI     00000000 (a2), 8006 (32774),
8004845c : 24C62A80  ADDIU   80060000 (a2), 80060000 (a2), 2a80 (10880),
80048460 : 3C088006  LUI     000020d4 (t0), 8006 (32774),


; somehow ends behaving like a dot motion amount

c0 8003f95c 0001
c0 80048470 24440000
subu = 0


; check for laser dot x-delta change
; - a0 = 32-bit + / -
80048464 : 8D082A44  LW      80060000 (t0), 2a44 (80060000 (t0)) [80062a44]
80048468 : 8CC20000  LW      00000001 (v0), 0000 (80062a80 (a2)) [80062a80]
8004846c : 00000000  NOP    
80048470 : 01022023  SUBU    00000001 (a0), 0000f9af (t0), 0000f931 (v0),
80048474 : 04810002  BGEZ    0000007e (a0), 80048480,
80048478 : 00801021  ADDU    0000f931 (v0), 0000007e (a0), 00000000 (r0),

8004847c : 00021023  SUBU    fffffff2 (v0), 00000000 (r0), fffffff2 (v0),


; (x*2 + 128) * 380
80048480 : 00021040  SLL     0000007e (v0), 0000007e (v0), 01 (1),
80048484 : 24420080  ADDIU   000000fc (v0), 000000fc (v0), 0080 (128),
80048488 : 00820018  MULT    0000007e (a0), 0000017c (v0),
8004848c : 3C078006  LUI     0000000c (a3), 8006 (32774),
80048490 : 8CE72A48  LW      80060000 (a3), 2a48 (80060000 (a3)) [80062a48]
80048494 : 8CC20004  LW      0000017c (v0), 0004 (80062a80 (a2)) [80062a84]
80048498 : 00001812  MFLO    ffff0000 (v1), 0000bb08 (lo),
8004849c : 04610002  BGEZ    0000bb08 (v1), 800484a8,
800484a0 : 00E22823  SUBU    80062a4c (a1), 00010644 (a3), 00010580 (v0),

800484a4 : 2463007F  ADDIU   fffff778 (v1), fffff778 (v1), 007f (127),

800484a8 : 04A10002  BGEZ    000000c4 (a1), 800484b4,
800484ac : 00A01021  ADDU    00010580 (v0), 000000c4 (a1), 00000000 (r0),

800484b0 : 00021023  SUBU    ffffff80 (v0), 00000000 (r0), ffffff80 (v0),

; (y*2 + 128) * 520
800484b4 : 00021040  SLL     000000c4 (v0), 000000c4 (v0), 01 (1),
800484b8 : 24420080  ADDIU   00000188 (v0), 00000188 (v0), 0080 (128),
800484bc : 00A20018  MULT    000000c4 (a1), 00000208 (v0),

*** output x?
800484c0 : 000321C3  SRA     0000007e (a0), 0000bb08 (v1), 07 (7),

800484c4 : 00001812  MFLO    0000bb08 (v1), 00018e20 (lo),
800484c8 : 04610002  BGEZ    00018e20 (v1), 800484d4,
800484cc : 00000000  NOP    

800484d0 : 2463007F  ADDIU   ffff4000 (v1), ffff4000 (v1), 007f (127),

800484d4 : 3C028006  LUI     00000208 (v0), 8006 (32774),
800484d8 : 90422A55  LBU     80060000 (v0), 2a55 (80060000 (v0)) [80062a55]

*** output y?
800484dc : 000329C3  SRA     000000c4 (a1), 00018e20 (v1), 07 (7),

800484e0 : ACC80000  SW      0000f9af (t0), 0000 (80062a80 (a2)) [80062a80]
800484e4 : 14400006  BNE     00000000 (v0), 00000000 (r0), 80048500,

====> JMP IF DELTA CHANGE


; gun trigger pulled here
800484e8 : ACC70004  SW      00010644 (a3), 0004 (80062a80 (a2)) [80062a84]
800484ec : 34020001  ORI     00000000 (v0), 00000000 (r0), 0001 (1),
800484f0 : 3C018006  LUI     80060000 (at), 8006 (32774),
800484f4 : A0222A55  SB      00000001 (v0), 2a55 (80060000 (at)) [80062a55]
800484f8 : 08012253  J       8004894c,
800484fc : 00000000  NOP    


(JMP HERE)
80048500 : 3C038006  LUI     00003a20 (v1), 8006 (32774),
80048504 : 8C63220C  LW      80060000 (v1), 220c (80060000 (v1)) [8006220c]
80048508 : 00000000  NOP    
8004850c : 2463FFFD  ADDIU   00000005 (v1), 00000005 (v1), fffd (65533),
80048510 : 00031040  SLL     00000001 (v0), 00000002 (v1), 01 (1),
80048514 : 00431021  ADDU    00000004 (v0), 00000004 (v0), 00000002 (v1),
80048518 : 00021300  SLL     00000006 (v0), 00000006 (v0), 0c (12),
8004851c : 3403A000  ORI     00000002 (v1), 00000000 (r0), a000 (40960),
80048520 : 00431021  ADDU    00006000 (v0), 00006000 (v0), 0000a000 (v1),
80048524 : 00021083  SRA     00010000 (v0), 00010000 (v0), 02 (2),

(***)
80048528 : 00820018  MULT    00000001 (a0), 00004000 (v0),
8004852c : 00001812  MFLO    0000a000 (v1), 00004000 (lo),
80048530 : 00A20018  MULT    00000074 (a1), 00004000 (v0),
80048534 : 3C028006  LUI     00004000 (v0), 8006 (32774),


; in-game cursor-x + delta-x (instant)
; - 00a0 / 0000 = center (320)
80048538 : 8C422A58  LW      80060000 (v0), 2a58 (80060000 (v0)) [80062a58]
8004853c : 00000000  NOP    
80048540 : 00621821  ADDU    00004000 (v1), 00004000 (v1), 00a90000 (v0),
80048544 : 3C018006  LUI     80060000 (at), 8006 (32774),
80048548 : AC232A58  SW      00a94000 (v1), 2a58 (80060000 (at)) [80062a58]


; in-game cursor-y + delta-y
8004854c : 3C038006  LUI     00a94000 (v1), 8006 (32774),
80048550 : 8C632A5C  LW      80060000 (v1), 2a5c (80060000 (v1)) [80062a5c]
80048554 : 00001012  MFLO    00a90000 (v0), 001d0000 (lo),
80048558 : 00431021  ADDU    001d0000 (v0), 001d0000 (v0), 00594000 (v1),
8004855c : 3C018006  LUI     80060000 (at), 8006 (32774),
80048560 : AC222A5C  SW      00764000 (v0), 2a5c (80060000 (at)) [80062a5c]

80048564 : 08012253  J       8004894c,
80048568 : 34110001  ORI     00000000 (s1), 00000000 (r0), 0001 (1),







; xy-values for laser dot? (force to zero)
; - also shot marker though
8004913c : 8C910000  LW      00000001 (s1), 0000 (80062a58 (a0)) [80062a58]
80049140 : 8C920004  LW      0000000c (s2), 0004 (80062a58 (a0)) [80062a5c]
80049144 : 00C21024  AND     000c00a0 (v0), 00000000 (a2), 000c00a0 (v0),
80049148 : 10400003  BEQ     00000000 (v0), 00000000 (r0), 80049158,
8004914c : 24850004  ADDIU   80062a5c (a1), 80062a58 (a0), 0004 (4),
80049158 : 3C028007  LUI     00000000 (v0), 8007 (32775),
8004915c : 8C42CED0  LW      80070000 (v0), ced0 (80070000 (v0)) [8006ced0]
80049160 : 00000000  NOP    
80049164 : 00C21024  AND     00000010 (v0), 00000000 (a2), 00000010 (v0),
80049168 : 10400003  BEQ     00000000 (v0), 00000000 (r0), 80049178,
8004916c : 00000000  NOP    
80049178 : 3C038007  LUI     00040000 (v1), 8007 (32775),
8004917c : 8C63CEE0  LW      80070000 (v1), cee0 (80070000 (v1)) [8006cee0]
80049180 : 3C028007  LUI     00000000 (v0), 8007 (32775),
80049184 : 8C42CEE4  LW      80070000 (v0), cee4 (80070000 (v0)) [8006cee4]
80049188 : 00000000  NOP    
8004918c : 00621025  OR      0000000a (v0), 00000005 (v1), 0000000a (v0),
80049190 : 00461024  AND     0000000f (v0), 0000000f (v0), 00000000 (a2),
80049194 : 10400003  BEQ     00000000 (v0), 00000000 (r0), 800491a4,
80049198 : 00C33024  AND     00000000 (a2), 00000000 (a2), 00000005 (v1),
800491a4 : 02202021  ADDU    80062a58 (a0), 00a00000 (s1), 00000000 (r0),
800491a8 : 02402821  ADDU    80062a5c (a1), 00080000 (s2), 00000000 (r0),
800491ac : 0C012E31  JAL     8004b8c4, 800492a0 (ra),
800491b0 : 02003021  ADDU    00000000 (a2), 00000000 (s0), 00000000 (r0),


8004bb88 : 3C13BFFF  LUI     00000002 (s3), bfff (49151),
8004bb8c : 3C02FFFD  LUI     8004bb88 (v0), fffd (65533),

--->
8004bb90 : 02821821  ADDU    00000000 (v1), 000d0000 (s4), fffd0000 (v0),
8004bb94 : 3C058006  LUI     00080000 (a1), 8006 (32774),
8004bb98 : 8CA52A94  LW      80060000 (a1), 2a94 (80060000 (a1)) [80062a94]

--->
8004bb9c : 02A21021  ADDU    fffd0000 (v0), 00080000 (s5), fffd0000 (v0),

; draw laser dot1-y
8004bba0 : ACA20018  SW      00050000 (v0), 0018 (8006ca94 (a1)) [8006caac]
8004bba4 : 8CA20000  LW      00050000 (v0), 0000 (8006ca94 (a1)) [8006ca94]
8004bba8 : 3673FFFF  ORI     bfff0000 (s3), bfff0000 (s3), ffff (65535),

; draw laser dot1-x
8004bbac : ACA30014  SW      000a0000 (v1), 0014 (8006ca94 (a1)) [8006caa8]





; laser dot shot (6caa8 / 6caac)
8004be94 : 8CA52AAC  LW      80060000 (a1), 2aac (80060000 (a1)) [80062aac]
---> force addu
8004be98 : 02A21021  ADDU    fffd0000 (v0), 00c20000 (s5), fffd0000 (v0),
8004be9c : AC830014  SW      012c0000 (v1), 0014 (8006ca94 (a0)) [8006caa8]
--->
8004bea0 : 0C01267A  JAL     800499e8, 8004b9e4 (ra),
--->
8004bea4 : AC820018  SW      00bf0000 (v0), 0018 (8006ca94 (a0)) [8006caac]





; laser dot reload (6caa8 / 6caac)
8004bfb4 : 8C842A94  LW      80060000 (a0), 2a94 (80060000 (a0)) [80062a94]
---> force addu
8004bfb8 : 02831021  ADDU    00000000 (v0), 01320000 (s4), fffd0000 (v1),
8004bfbc : AC820014  SW      012f0000 (v0), 0014 (8006ca94 (a0)) [8006caa8]
8004bfc0 : 8C820000  LW      012f0000 (v0), 0000 (8006ca94 (a0)) [8006ca94]
---> force addu
8004bfc4 : 02A31821  ADDU    fffd0000 (v1), 00dc0000 (s5), fffd0000 (v1),
8004bfc8 : 3C018006  LUI     80060000 (at), 8006 (32774),
8004bfcc : AC202270  SW      00000000 (r0), 2270 (80060000 (at)) [80062270]
8004bfd0 : 3C018006  LUI     80060000 (at), 8006 (32774),
8004bfd4 : AC2022BC  SW      00000000 (r0), 22bc (80060000 (at)) [800622bc]
8004bfd8 : AC830018  SW      00d90000 (v1), 0018 (8006ca94 (a0)) [8006caac]
